草庐IT

C++:替代 STL 和 Boost?

全部标签

windows - 如何调用NdisOpenAdapterEx或ProtocolBindAdapter例程之外的替代方法?

我正在将著名的数据包捕获软件-WinPcap从NDIS5.0移植到NDIS6.x。我试图将每个NDIS5.0功能转换为它的6.0版本。在WinPcap源代码中,NdisOpenAdapter由Openclos.c中的NPF_OpenAdapter调用。我将其翻译为NDIS6.0的NdisOpenAdapterEx。但我找不到设置第4个参数BindContext的方法。NdisOpenAdapterEx的替代版本可以在这里找到:http://msdn.microsoft.com/en-us/library/windows/hardware/ff563715(v=vs.85).aspx微软

c++ - boost::interprocess 共享内存在 32 和 64 位进程之间

我正在尝试让boost::interprocess在32位和64位进程之间共享内存。Thisbugtrackerentry这表明这在我使用的Boost1.49中是可能的。作为测试,我尝试共享一个无符号整数。这是一个带有两个按钮的简单Qt应用程序。#defineSHARED_MEMORY_NAME"Mysharedmemory"#defineSHARED_VAR_NAME"testVar"namespacebip=boost::interprocess;voidon_createMemButton_clicked(){std::cout(SHARED_VAR_NAME)(42);std:

c++ - boost iostreams 断言失败

我需要能够使用单个fstream以具有平台无关的文件使用方式。特别是,我需要能够在Windows上支持带有unicode字符的文件路径,同时尽可能减少对代码的侵入以支持它。因此,boostiostreams似乎可以提供答案。然而,在尝试使用它时,我遇到了两个让我担心的失败。请参阅以下示例代码://MinGW(MSYS)//GCC4.7.2//Boost1.50.0//g++-gifstreamtest.cpp-otest.exe-I/t/tools/boost/boost_1_50_0-L/t/tools/boost/boost_1_50_0/stage/lib-lboost_syst

python - 如何使用 msvc 10.0 为 win8.1 64 位构建 boost python 3.4 共享库

我正在尝试为python3.464库构建boostpython因为我需要它们来构建http://dlib.net/python绑定(bind)我的设置如下:安装MSVC12.0python3.464位已安装我下载了最新的boost1.57我能够编译静态库,但是当我尝试链接动态库时程序失败。我的project-config.jam看起来像这样importoption;usingmsvc:10.0;usingpython:3.4:C:\\Python34;option.setkeep-going:false;为了甚至为64位编译静态库,我的bjam看起来像这样.\bjam.exe--adr

c++ - boost::core::demangle 在 vi​​sual studio typeid().name 上

我试图在Windows(visualstudio2010)上获取一个报告类类型的字符串,但没有任何成功。由于UnDecorateName不起作用,我正在使用boost库。#include#includeclassMyObject{};intmain(intargc,char**argv){MyObjecto;constchar*str=typeid(o).name();//str="classMyObject"std::stringdstr=boost::core::demangle(str);//dstr="classMyObject"return0;}我怎样才能从上面的代码中只得到

.net - 是否有具有相同公共(public)接口(interface)的 System.Drawing.Graphics 的直接替代品?

我们有一个老化的.NETWindows桌面海洋导航应用程序,它对S-57海洋矢量图(map)、船舶、预测器和各种导航对象(例如路线)进行一些中等复杂的渲染。渲染是很久以前使用System.Drawing.Graphics实现的。在某些情况下,绘图会变得非常慢。我们使用了VS2013分析器和dotTrace分析器来优化我们代码中明显的热点。剩下的时间花在Graphics.DrawLines、Graphics.FillPolygon等方法上从长远来看,渲染需要重新实现或移植到硬件加速的图形API。是否存在与System.Drawing.Graphics具有相同接口(interface)的任

c# - 替代输入设备 (Midi) 不会阻止 Winforms 应用程序中的屏幕保护程序

我开发了一个C#WinForms应用程序,用户通过MIDI连接设备提供输入。用户将长时间不使用键盘或鼠标。当我收到一条MIDI消息时,我能做些什么来“告诉”系统这算作用户事件(即按键)。如果正在使用MIDI设备,我不希望出现屏幕保护程序或时间锁定。我认为我的请求与我见过的其他请求不同,因为他们希望在其应用程序的生命周期内禁用屏幕保护程序,因此我只希望我收到的MIDI输入算作用户交互。当我收到MIDI输入以表示系统用户事件时,我可以调用什么吗? 最佳答案 这是一个似乎是这样做的CodeProject项目:http://www.code

windows - 用于检测不死进程的 NtQueryInformationProcess 替代方案?

我想检测何时有人在不通知调试器的情况下终止暂停的调试进程。(例如,到达控制台应用程序中的断点,并关闭应用程序的控制台窗口。)进程进入类似僵尸的状态,并且在调试器释放它之前无法进一步交互。当通过NtQueryInformationProcess收集有关进程的信息时,此状态似乎设置了PROCESS_EXTENDED_BASIC_INFORMATION::IsProcessDeleting标志,但标志、结构和函数在MSDN上实际上未记录并标记为“请勿使用”。测试这个标志可靠吗?我可以使用更好的“官方”API吗?(是的,我知道IsProcessDeleting也会在进程正常关闭(惊讶,惊喜)时

windows - Boost + Visual Studio 2010 + Windows 平台 SDK 7.1

有人能告诉我bjam的命令行开关或其他可以使VS2010使用新的Windows平台SDK7.1工具链进行boost编译的命令吗?这是您可以在普通的visualstudio项目中设置的选项。默认值为v100,它是平台7.0工具链的变体。提前致谢。 最佳答案 在你的环境中试试这个setSdkTools=c:\ProgramFiles\MicrosoftSDKs\Windows\v7.1\Bincall"%SdkTools%\SetEnv.Cmd"/xp/x86假设这是您安装了WindowsSDK的位置。信息来自here-可能还有更多工作

windows - 计算机管理管理单元中是否有替代 MSMQ 管理控制台的命令行?

我正在使用“计算机管理”管理单元检查MSMQ状态。特别是传出队列。我想知道是否有命令行实用程序可以让我这样做。IE。运行该实用程序将显示所有传出队列及其状态。谢谢。 最佳答案 没有。您需要编写自己的应用程序或脚本(或找到其他人编写的)。产品中没有任何东西可以为您完成。 关于windows-计算机管理管理单元中是否有替代MSMQ管理控制台的命令行?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/que